Software architecture of an application may be divided into different layers such as a persistency layer, an application layer, and a presentation layer. The persistency layer is the one where data is persisted and an interface for data accessing may be offered. The application layer includes business logic implemented for the business application. The presentation layer provides controls and interface components. The presentation layer may be a user interface (UI) with different graphical elements and user controls. The UI is accessed by users to execute different task with data persisted in the persistency layer and according to the logic defined in the application layer. The different layers are linked through common data models. Data models are used very often and satisfy customer company requirements for the applications. For example, an organizational structure may be defined with a data model and reflected into a business application. The definition of the structure may specify what entries a user can define to set up a company, person, and/or employment data. A data model includes defined fields. A new field may be added, or existing fields may be customized (e.g. renamed). Data models may be defined in standardized files with standard elements and corresponding fields. The definitions are adjustable to customer's preferences. Data is stored according to the data model definition in the persistency layer, for example, in a database.
The data model also includes properties, which may be related to the whole data model, to the elements defined in the data model, and/or to the fields of the elements. These properties have influence on the way data is presented. The properties may define whether a field is editable, and/or whether the field is hidden, and/or the field is in a read-only mode, and/or mandatory, etc. Data from the persistency layer is presented on the presentation layer according to the defined presentation properties in the data model. Two data model instances stored according to a particular data model may be requested for presentation on the presentation layer with different presentation properties compared to the defined presentation properties in the data model.